A Java processor is the implementation of the Java virtual machine (JVM) in hardware. In other words, the Java bytecode that makes up the instruction set of the abstract machine becomes the instruction set of a concrete machine. These were the most popular form of a high-level language computer architecture, and were "an attractive choice for building embedded and real-time systems that are programmed in Java". However, as of 2017, embedded Java is no longer common and no realtime Java chip vendors exist.
Implementations
There are several research Java processors tested on FPGA, including:
-
picoJava was the first attempt to build a Java processor, by Sun Microsystems. Its successor picoJava-II was freely available under the Sun Community Source License,
[ and is still available from some archives.
]
-
provides hardware support for object-oriented functions
-
Java Optimized Processor
for . A PhD thesis is available, and it has been used in several commercial applications.[ In 2019 it was extended to be energy aware (EAJOP).]
Some commercial implementations included:
-
The aJile processor was the most successful ASIC Java processor.
[
]
-
Cjip from Imsys Technologies. Available on boards and with wireless radios from AVIDwireless
["Imsys hedges bets on Java: rewritable-microcode chip has instruction sets for Java, Forth, C/C++"]
]
by Tom R. Halfhill
[2]
-
ARM926EJ-S was an ARM processor able to run Java bytecode, this technology being named Jazelle.
See also